package com.demo.oauth.server.model;

import java.util.Date;

/**
 * 应用客户端
 * 
 * @author johnguo
 *
 */
public class ApplicationClient extends BaseModel {

	// 客户端ID
	private String clientId;

	// 客户端密匙
	private String clientSecret;

	// 应用名称
	private String name;

	// 资源ID
	private String resourceIds;

	// 权限信息
	private String authorities;

	// 权限范围
	private String scope;

	// 客户端支持的grant_type
	private String grantTypes;

	// 回调地址
	private String redirectUri;

	// 访问令牌有效时间值(单位:秒)
	private Integer accessTokenValidity = 7200;

	// 更新令牌有效时间值(单位:秒)
	private Integer refreshTokenValidity = 604800;

	// 额外信息(预留字段)
	private String additionalInformation;

	// 备注
	private String memo;

	// 用户是否自动Approval操作
	private Boolean autoApprove;

	// 是否启用
	private Boolean enable = true;

	// 更新时间
	private Date updateTime;

	public String getClientId() {
		return clientId;
	}

	public void setClientId(String clientId) {
		this.clientId = clientId;
	}

	public String getClientSecret() {
		return clientSecret;
	}

	public void setClientSecret(String clientSecret) {
		this.clientSecret = clientSecret;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getScope() {
		return scope;
	}

	public void setScope(String scope) {
		this.scope = scope;
	}

	public String getGrantTypes() {
		return grantTypes;
	}

	public void setGrantTypes(String grantTypes) {
		this.grantTypes = grantTypes;
	}

	public String getRedirectUri() {
		return redirectUri;
	}

	public void setRedirectUri(String redirectUri) {
		this.redirectUri = redirectUri;
	}

	public Integer getAccessTokenValidity() {
		return accessTokenValidity;
	}

	public void setAccessTokenValidity(Integer accessTokenValidity) {
		this.accessTokenValidity = accessTokenValidity;
	}

	public Integer getRefreshTokenValidity() {
		return refreshTokenValidity;
	}

	public void setRefreshTokenValidity(Integer refreshTokenValidity) {
		this.refreshTokenValidity = refreshTokenValidity;
	}

	public String getAdditionalInformation() {
		return additionalInformation;
	}

	public void setAdditionalInformation(String additionalInformation) {
		this.additionalInformation = additionalInformation;
	}

	public String getMemo() {
		return memo;
	}

	public void setMemo(String memo) {
		this.memo = memo;
	}

	public Boolean getAutoApprove() {
		return autoApprove;
	}

	public void setAutoApprove(Boolean autoApprove) {
		this.autoApprove = autoApprove;
	}

	public Boolean getEnable() {
		return enable;
	}

	public void setEnable(Boolean enable) {
		this.enable = enable;
	}

	public String getResourceIds() {
		return resourceIds;
	}

	public void setResourceIds(String resourceIds) {
		this.resourceIds = resourceIds;
	}

	public String getAuthorities() {
		return authorities;
	}

	public void setAuthorities(String authorities) {
		this.authorities = authorities;
	}

	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

}
